ข้อความ Commit แบบ Semantic: ยกระดับทักษะการเขียนโปรแกรมของคุณ
เคยไหม? เวลาต้องย้อนกลับไปดู commit เก่า ๆ รู้สึกสับสน อ่านแล้วไม่เข้าใจว่า commit นั้น ๆ เปลี่ยนแปลงอะไรไปบ้าง ปัญหานี้สามารถแก้ไขได้ง่าย ๆ เพียงแค่เปลี่ยนรูปแบบการเขียนข้อความ commit ให้เป็นแบบ Semantic Commit Messages
Semantic Commit Messages คืออะไร?
Semantic Commit Messages คือรูปแบบการเขียนข้อความ commit ที่มีความชัดเจน กระชับ สื่อความหมายได้ครบถ้วน ประกอบไปด้วย 3 ส่วนหลัก ดังนี้
ประเภทของการเปลี่ยนแปลง (type)
: ระบุประเภทของการเปลี่ยนแปลง ตัวอย่างประเภทที่นิยมใช้ เช่น
feat
: เพิ่มฟีเจอร์ใหม่สำหรับผู้ใช้fix
: แก้ไขข้อบกพร่องสำหรับผู้ใช้docs
: อัปเดตเอกสารstyle
: ปรับแต่งรูปแบบโค้ดrefactor
: ปรับโครงสร้างโค้ดtest
: เพิ่มหรือแก้ไขโค้ดทดสอบchore
: อัปเดตงานอื่น ๆ ที่ไม่เกี่ยวกับโค้ด product
-
ขอบเขต (scope)
: ระบุส่วนที่ได้รับผลกระทบจากการเปลี่ยนแปลง (ไม ่จำเป็นต้องระบุ) -
หัวข้อ (subject)
: อธิบายหัวข้อหลักของการเปลี่ยนแปลง
ตัวอย่าง
feat
: เพิ่มปุ่ม "บันทึก"fix
: แก้ไขข้อผิดพลาดในการแสดงผลรูปภาพdocs
: อัปเดตเอกสารประกอบ APIstyle
: ปรับแต่ง format ของโค้ดrefactor
: เปลี่ยนชื่อตัวแปรcount
เป็นtotal
test
: เพิ่มการทดสอบสำหรับฟีเจอร์ใหม่chore
: อัปเดตสคริปต์ build
ข้อดีของการใช้ Semantic Commit Messages
- อ่านเข้าใจง่าย: ข้อความ commit ที่มีความชัดเจน กระชับ ช่วยให้เข้าใจเนื้อหาได้ง่าย โดยไม่ต้องเสียเวลาตีความ
- ติดตามการเปลี่ยนแปลง: ง่ายต่อการติดตามว่ามีการเปลี่ยนแปลงอะไรเกิดขึ้นบ้างใน project
- ค้นหาข้อมูล: ค้นหา commit ที่ต้องการได้อย่างสะดวกรวดเร็ว
- ทำงานร่วมกัน: ช่วยให้การทำงานร่วมกันเป็นทีมราบรื่นขึ้น สมาชิกในทีมสามารถเข้าใจการเปลี่ยนแปลงของผู้อื่นได้ง่าย
การเริ่มต้นใช้งาน Semantic Commit Messages
การเริ่มต้นใช้งาน Semantic Commit Messages นั้นง่ายมาก เพียงแค่ทำ ตามขั้นตอนดังนี้
- เลือกประเภทของการเปลี่ยนแปลง
- ระบุขอบเขต (ถ้ามี)
- เขียนหัวข้อที่อธิบายเนื้อหาการเปลี่ยนแปลง
ตัวอย่างเพิ่มเติม
- feat(profile): เพิ่มฟีเจอร์แก้ไขข้อมูลส่วนตัว
- fix(login): แก้ไขข้อผิดพลาดในการเข้าสู่ระบบ
- docs(api): อัปเดตเอกสารประกอบ API เกี่ยวกับการชำระเงิน
- style(components): ปรับแต่ง format ของโค้ดใน component
- refactor(utils): เปลี่ยนชื่อฟังก์ชัน
calculateTotal
เป็นcomputeSum
- test(features): เพิ่มการทดสอบสำหรับฟีเจอร์ใหม่
- chore(deps): อัปเดตเวอร์ชันของ library ที่ใช้
แหล่งข้อมูล
- https://www.conventionalcommits.org/
- https://seesparkbox.com/foundry/semantic_commit_messages
- http://karma-runner.github.io/1.0/dev/git-commit-msg.html
การใช้ Semantic Commit Messages เป็นวิธีง่าย ๆ ที่ช่วยยกระดับทักษะการเขียนโปรแกรมของคุณ ช่วยให้การทำงานร่วมกันเป็นทีมราบรื่นขึ้น และช่วยให้ติดตามการเปลี่ยนแปลงต่าง ๆ ใน project ได้อย่างมีประสิทธิภาพ
ลองนำ Semantic Commit Messages ไปใช้กับ project ของคุณ เริ่มต้นวันนี้!